home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs49.d81 / histry.cbm < prev    next >
Text File  |  2009-10-10  |  24KB  |  417 lines

  1. The following series of messages were posted by former CBM design engineer
  2. Bil Herd 71155,533.  They represent a fascinating look into the "behind the
  3. scenes" shenanigans at Commodore while the C128 was being produced.  Enjoy!
  4.  
  5. This file will be updated periodically as Bil gives us more of the story.
  6.  
  7.                              --*--*--*--*--*--
  8.  
  9.  
  10. 03-Jan-93  00:09:52
  11.  
  12. Ya interested in history??? Ever hear of the Chuck Peddal Special pin ?  If
  13. you pull out the ORIGINAL (HANDRAWN!) schematics of tthe 6502 there is an
  14. unusual pad marked CPS. This later went on to be the Set Overflow (SO) pin of
  15. renowned 1541 use.
  16.  
  17. VIC modes of operation are actually fairly well documented in places like the
  18. C64 and C128 programmers reference guide.  Do you mean memory maps or VIC
  19. Modes of operation like the Famous
  20. Multi-Color-Character-Except-every-fourth-Thursday mode?  (I.E. those
  21. semi-silly modes that give the VIC chip its versatilty).  There arn't really
  22. any unsupported modes as if there was a hidden mode, meaning one the
  23. designers didn't know about, it was usually exploited by the ingenious crowd
  24. of developers.
  25.  
  26. Bil
  27.  
  28. P.S. Have you come across any mention of the 8510-HERD?  Special run chip (48
  29. pin) that was like gold to developers during C128 development.
  30.  
  31.  
  32.  
  33. 12-Jan-93  19:28:05
  34.  
  35. Coming soon to a terminal near you... the gruesome story of the chip that
  36. almost ruined CES (and the C128 along with it)
  37.  
  38. EXPERIENCE the shame and horror of being a Chip Designer at Commodore during
  39. the Witch hunts!
  40.  
  41. SEE the expresions on Managers faces when they realize that their Bonuses are
  42. at stake!
  43.  
  44. HEAR the woeful lamenting of the programers as they are beaten for no
  45. apparent reason!
  46.  
  47. SHARE the experience of being a Hardware Engineer... stalking the halls in
  48. search of programmers to beat (for no apparent reason).
  49.  
  50. LEARN how to say "THIS CHIP ONE SICK PUP" in Japanese.
  51.  
  52. Find out just how badly busted up the 80 column chip was and how many DIRTY
  53. fixes were needed to make that all crucial show in Vegas on January 6.
  54. (Christmas, what Christmas). .
  55.  
  56. <Said rather coyly in an attempt to elicit any positive responses> Unless of
  57. course no one is interested..... :) Bil
  58.  
  59.  
  60. 14-Jan-93  15:37:59
  61.  
  62. This is the first of many parts as this thing went round and round during our
  63. mad dash to make the CES show. I don't even remember what year it was. The
  64. 8563 was a holdover from the Z8000 based C900 (the "Z" machine as we called
  65. it). The people who worked on it were called the "Z" people, the place they
  66. hung out was called the "Z" lounge and well.... you get the idea.
  67.  
  68. The most interesting thing that came out of that group besides a disk
  69. controller that prompted you for what sector and cylinder you'd like to write
  70. to on every access, was one day they stole the furniture out of the lobby and
  71. made their own lounge disguising it as a VAX repair depot. We were so
  72. amused by this that we stopped teasing them for a week.  (But I become
  73. distracted....)
  74.  
  75. Now the very very very early concept of the C128 was based on the D128, a
  76. 6509 based creature (boo... hiss).  The engineers on the project had tacked a
  77. VIC chip onto the otherwise monchrome (6845 based) in an effort to add some
  78. color to an otherwise drab machine. No one dreamed that C64 compatibility was
  79. possible so no one thought along those lines. I was just coming off of
  80. finishing the PLUS 4 (before they added that AWFUL built in software to it)
  81. and even though I had done exactly what I was told to do I was not happy with
  82. the end result and had decided to make the next machine compatible with
  83. _something_ instead of yet another incompatible CBM machine. (I won't go into
  84. the "yes Virginia there is Compatibility" memo that I wrote that had the
  85. lawyers many years later still chuckling, suffice it to say I made some
  86. fairly brash statements regarding my opinion of product strategy)
  87. Consequently, I was allowed/forced to put my money where my mouth was and I
  88. took over the C128 project.
  89.  
  90. I looked at the existing schematics once and then started with a new design
  91. based on C64ness. The manager of the chip group approached me and said they
  92. had a color version of the 6845 if I was interested in using it it would
  93. deffinately be done in time having been worked on already for a year and a
  94. half...... And so the story begins..... (to be continued)
  95.  
  96.  
  97. 16-Jan-93  19:06:28
  98.  
  99. Looking back I realize that the source of a lot of the problems with the 8563
  100. is that it wasn't designed FOR the C128 and that the IC designers did not
  101. take part in the application of their chip the way the other designers did.
  102. The VIC and MMU designers took an active interest in how their chip was used
  103. and how the system design worked in relation to their chip. I overlooked
  104. ramifications of how the 8563 was spec'ed to work that came back to haunt me
  105. later. For example, it was explained to me how there was this block transfer
  106. feature for transferring characters for things like scrolling.  Cool.... we
  107. need that. Later it would turn out when this feature finally did work
  108. correctly that it only was good for 256 characters at a time. 256 characters
  109. at a time. 256 characters at a time?? I never stopped to think to ask if the
  110. feature was semi-useless because it could only block move 3 and 1/3 lines at
  111. a time. Did I mention the block move was only good for 256 characters.  Later
  112. a bug in this feature would almost prove a show stopper with a serious
  113. problem showing up in Vegas the night of setup before the CES show. But I get
  114. ahead of myself. It was also my understanding that this part had the same
  115. operating parameters as the 6845, a VERY common graphics adapter.  Not
  116. scrutinizing the chip for timing differences the way I normally did any new
  117. chip was another mistake I made.  The major timings indicated what speed
  118. class it was in and I didn't check them all. I blame myself as this really is
  119. the type of mistake an amateur makes.  I wonder if I was in a hurry that day.
  120. :)
  121.  
  122.  
  123. 16-Jan-93  19:06:39
  124.  
  125. It turns out that a major change had been made to the way the Read/Write line
  126. was handled. When I asked about this, VERY late in the design cycle, like in
  127. Production when this problem turned up, I was told "remember,, this was
  128. designed to work in the Z8000 machine." ???!!!! ????!!!! Shoulda seen the
  129. look on my face! Even though the Z8000 machine was long dead and we had been
  130. TRYING for 6 months to use this damm thing in the C128 I'm being told NOW
  131. that you didn't design it to work the way we've been using it for 6 months?
  132. Shoulda asked.... it was my fault, shoulda asked "is this meant to work".....
  133. :/
  134.  
  135. Looking back I realize that the source of a lot of the problems with the 8563
  136. is that it wasn't designed FOR the C128 and that the IC designers did not
  137. take part in the application of their chip the way the other designers did.
  138. The VIC and MMU designers took an active interest in how their chip was used
  139. and how the system design worked in relation to their chip. I overlooked
  140. ramifications of how the 8563 was spec'ed to work that came back to haunt me
  141. later.  For example, it was explained to me how there was this block transfer
  142. feature for transferring characters for things like scrolling. Cool.... we
  143. need that. Later it would turn out when this feature finally did work
  144. correctly that it only was good for 256 characters at a time. 256 characters
  145. at a time. 256 characters at a time?? I never stopped to think to ask if the
  146. feature was semi-useless because it could only block move 3 and 1/3 lines at
  147. a time. Did I mention the block move was only good for 256 characters.  Later
  148. a bug in this feature would almost prove a show stopper with a serious
  149. problem showing up in Vegas the night of setup before the CES show. But I get
  150. ahead of myself.
  151.  
  152.  
  153. 16-Jan-93  19:06:50
  154.  
  155. It was also my understanding that this part had the same operating parameters
  156. as the 6845, a VERY common graphics adapter. Not scrutinizing the chip for
  157. timing differences the way I normally did any new chip was another mistake I
  158. made.  The major timings indicated what speed class it was in and I didn't
  159. check them all. I blame myself as this really is the type of mistake an
  160. amateur makes.  I wonder if I was in a hurry that day. :) It turns out that a
  161. major change had been made to the way the Read/Write line was handled.  When
  162. I asked about this, VERY late in the design cycle, like in Production when
  163. this problem turned up, I was told "remember,, this was designed to work in
  164. the Z8000 machine." ???!!!! ????!!!! Shoulda seen the look on my face!
  165. Even though the Z8000 machine was long dead and we had been TRYING for 6
  166. months to use this damm thing in the C128 I'm being told NOW that you didn't
  167. design it to work the way we've been using it for 6 months? Shoulda asked....
  168. it was my fault, shoulda asked "is this meant to work the way were using it?"
  169. :/
  170.  
  171. Don't get me wrong, the designer was VERY bright, he held patents for some of
  172. the "cells" in the Motorla 68000. It just that chip had to work in
  173. conjunction with other chips and thats where some ofd the problems lay.  Our
  174. story opens as Rev 0 of the chip.... (whats that..... doesn't work.... OK,)
  175. Our story opens as Rev 1 of the chip makes its debut and ......(pardon me a
  176. moment.....) Our story opens as Rev 2 of the chip makes it debut..... <to be
  177. continued>
  178.  
  179.  
  180. 19-Jan-93  20:50:41
  181.  
  182. Forgive the sporadic nature of these additions.  Now where was I .... oh
  183. yeah.... It was sometime in September when we got 8563 Silicon (or so memory
  184. serves) good enough to stick in a system. I can't remember what all was wrong
  185. with the Chip but one concern we had was it occasionally (no spell checker
  186. tonight, bear with me) blew up.... big time.... turn over die and then smell
  187. bad..... But then all of the C128 prototypes did that on a semi regular basis
  188. as there wasn't really any custom silicon yet, just big circuit boards
  189. plugged in where custom chips would later go... but you can't wait for a
  190. system to be completed before starting software development.   I don't think
  191. any of the Animals really gave it a thought until when the next rev of the
  192. chip came out and now with less other problems the blowing up 'seemed' more
  193. pronounced.  Also the protoypes got more solid _almost_ every day.  (I knew
  194. to go check on the programer's prototype whenever I heard the sound of cold
  195. spray coming out of their office.... later it turned out they usually weren't
  196. spraying the boards just using their "Hardware Engineer" call.  Sometimes all
  197. I had to do was touch the board in a mystical way and then back out slowly
  198. sometimes accompanied by ritual like chanting and humming.  This became know
  199. as the "laying of hands".  This worked every time execpt one, and that time
  200. it turned out I had stolen the power supply myself without telling them....
  201. If anybody else got caught "messing with my guys" they'd get duct taped to a
  202. locker and then the box kicked out from under them leaving them stuck until
  203. they could peel themselves down, but thats another story.)  ANYWAY, when this
  204. problem still existed on Rev 4 (I think it was) we got concerned.  It was at
  205. this time that the single most scariest statement came out of the IC Design
  206. section in charge of the '63.  This statement amounted to "you'll always have
  207. some chance statistically that any read or write cycle will fail due to
  208. (synchronicity)".
  209.  
  210.  
  211. 19-Jan-93  21:12:05
  212.  
  213. Synchronicity problems occur when two devices run off of two separate clocks,
  214. the VIC chip hence the rest of the system, runs off of a 14.318Mhz crystal
  215. and the 8563 runs off of a 16Mhz Oscillator. Now picture walking towrds a
  216. revolving door with your arms full of packages and not looking up before
  217. launching yourself into the doorway. You may get through unscathed if your
  218. timing was accidentally just right, or you may fumble through losing some
  219. packages (synonymous to losing Data) in the process or if things REALLY foul
  220. up some of the packages may make it through and you're left stranded on the
  221. other side of the door (synonymous to a completely blown write cycle). What I
  222. didn't realize that he meant was that since theres always a chance for a bad
  223. cycle to slip through, he didn't take even the most rudimentary protection
  224. against bad synchronising. IT's MY FAULT I didn't ask, "what do you mean
  225. fully by that statement" because I'd of found out early that there was NO
  226. protection. As it turns out the 8563 instead of failing every 3 years or so
  227. (VERY livable by Commodore standards) it failed about 3 times a second.  In
  228. other words if you tried to load the font all in one shot it would blow up
  229. every time!  The IC designers refused to believe this up until mid December
  230. (CES in 2-3 weeks!) because "their unit in the lab didn't do it."  Finally I
  231. said "show us" and they led the whole rabble (pitch forks, torches, ugly
  232. scene) down to the lab.  It turns out they wern't EVEN TESTING THE CURRENT
  233. REV of the chip, (TWO revs old), they were testing it from Basic because it
  234. "blew up" every time they ran it at system speeds (No %^$#%$# sherlock.
  235. That's what we're trying to tell you) and even then it screwed up once and
  236. the designer reached for the reset switch saying that something does
  237. occasionally go wrong.  Being one of the Animals with my reflexes highly
  238. tuned by Programer Abusing I was able to snatch his arm in mid-air before he
  239. got to the reset switch, with blatant evidence there on the test screen.
  240.  
  241.  
  242. 19-Jan-93  21:12:15
  243.  
  244. One of the rabble was their boss and (I have been speaking about two
  245. designers interchangeably, but then they were interchangeable,) the word
  246. Finally came down "FIX IT".  Hollow Victory as there was only two weeks till
  247. we packed for the show, and there were 4 or 5 other major problems (I'll say
  248. more later) with the chip and NO time to do another pass. It was obvious that
  249. if we were going to make CES something had to give. As Josey Wales said,
  250. "Thats when ya gotta get Mean.... I mean downright plumb crazy Loco Mean".
  251. And we knew we had to.
  252.  
  253.  
  254. 22-Jan-93  14:17:32
  255.  
  256. Memory flash, I just remebered when we found out there was no interrupt
  257. facility built in to the 8563.  I remember how patient the designer was when
  258. he sat me down to explain to me that you don't need an interrupt from the
  259. 8563 indicating that an operation is complete because you can check the
  260. status ANY TIME mearly by stopping what you're doing (over and over) and
  261. looking at the appropriate register, (even if this means banking in I/O) or
  262. better yet sit in a loop watching watching the register that indicates when
  263. an operation is done (what else could be going on in the system besides
  264. talking to the 8563 ???)  Our running gag became not needing a ringer on the
  265. phone because you can pick it up ANY TIME and check to see if someone's on
  266. it, or better yet, sit at your desk all day picking the phone up.   Even in
  267. the hottest discussions someone would suddenly stop, excuse himself, and pick
  268. up the nearest phone just to see if there was someone on it.  This utterly
  269. failed to get the point across but provided hours of amusement.  The owners
  270. at the local bar wondered what fixation the guys from Commodore had with the
  271. pay phone.
  272.  
  273. Any ways.... To back up to the other problems that plauged the 8563.  Going
  274. into December a couple of things happened.  The design had been changed to
  275. support a "back-bias generator".  This thing is generally used to reduce
  276. power consumption and speed the chip up.  Well, something was not quite right
  277. somewhere in the design because the chip got worse.  The second thing that
  278. happened was that both designers took vacation.  Nothing against that from my
  279. point of view here 8-9 years in the future, but right then we couldn't
  280. understand what these people were doing working on a critical project.
  281.  
  282.  
  283. 22-Jan-93  14:17:37
  284.  
  285. Or maybe I was just getting to used to eating Thanksgiving Dinner out of
  286. aluminum foil off of a Lab Bench.  Christmas consisted of stopping at
  287. someone's house who lived in the area for a couple of hours on the way home
  288. from work.  Anyways, the chips could no longer display a solid screen.  The
  289. first couple of characters on each line were either missing or tearing, until
  290. the thing heated up, then they were just missing.  Also, the yield of chips
  291. that even worked this good fell to where they only got 3 or 4 working chips
  292. the last run.  A run is a Half-Lot at MOS and costs between $40,000 and
  293. $120,000 to run.  Pretty expensive couple of chips.
  294.  
  295. The other problem takes a second to explain, but first a story.....  Back
  296. when TED (the Plus four) had been mutilated decimated and defecated upon,
  297. managment decided to kick the body one last time.  "TED shall Talk" came the
  298. decree and the best minds in the industry were sought... We actually did have
  299. two of the most noted consumer speech people at the time, the guys who
  300. designed the "TI Speak an Spell" worked out of the Commodore Dallas office.
  301. They did a custom chip to interface a speech chip set to the processor.
  302. Operating open loop, in other words without feedback from any of the system
  303. design people (US) they defined the command registers.  There was a register
  304. that you wrote to to request a transfere.  To REALLY request the transfer you
  305. wrote the same value a second time. We refered to this as the "do it, do it
  306. now" register or the "come on pretty please" request, or my favorite, "those
  307. #$%&@ Texans" register. ANYWAYS, the 8563 also had a problem where the 256
  308. 'bite' transfer didn't always take place properly, leaving a character
  309. behind. This ended up having the effect of characters scrolling upwards
  310. randomly.
  311.  
  312.  
  313. 22-Jan-93  14:17:45
  314.  
  315. So to recap, going into December we had a chip with .001% yield, the left
  316. columns didn't work, anytime there was one pixel by itself you couldn't see
  317. it, the semi useless block transfer didn't work right, the power supply had
  318. to be adjusted for each chip, and it blew up before you loaded all of the
  319. fonts unless you took 10 seconds to load the fonts in which case it blew up
  320. only sometimes. Finger pointing was in High swing, (the systems guys should
  321. have said they wanted WORKING silicon) with one department pitted against the
  322. other, which was sad because the other hardworking chip designers had
  323. preformed small miracles in getting their stuff done on time. Managers
  324. started getting that look rabbits get in the headlights of onrushing Mack
  325. trucks,  some started drinking, some reading poetry aloud and the worst were
  326. commonly seen doing both. Our favorite behaviour was where they hid in their
  327. offices.  It was rumored that the potted plant in the lobby was in line for
  328. one of the key middle managment positions. Programmer beatings had hit a new
  329. high only to fall off to almost nothing overnight as even this no longer
  330. quelled the growing tension. A sprinkler head busted and rained all over
  331. computer equipment stored in the hallway. Engineering gathered as a whole and
  332. watched on as a $100,000 worth of equipment became waterlogged, their
  333. expressions much like the bystanders at a grisly accident who can't tear
  334. their attention away from the ensuing carnage.  I can honestly say that it
  335. didn't seriously occur to me that we wouldn't be ready for CES, for if it
  336. had, I might have succumbed to the temptation to go hide in my office
  337. (checking the telephone).  There were just too many problems to stop and
  338. think what if.  Next time (hopefully) I'll try and bring all the problems and
  339. answers together and explain why I stopped to tell that rather out of place
  340. TED story.
  341.  
  342.  
  343. 30-Jan-93  19:27:11
  344.  
  345. No single custom chip was working completely as we went into December with
  346. the possible exception of the 8510 CPU.  The MMU had a problem where data was
  347. "bleeding through" from the upper 64K bank into the lower.  This was in part
  348. due to a mixup in the different revision of "layers" that are used to make
  349. chips. This chip essentially had one of the older layers magically appear
  350. bring old problems with it.  Unfortunately, this older layer had been used to
  351. fix newer problems so we didn't have a way to combine existing layers to fix
  352. ALL problems. Dave D'Orio (start telling ya some of the names of a few of the
  353. unsung types here) did a GREAT job of bringing most of the IC design efforts
  354. together.  I was sitting with Dave in a bar, we were of course discussing
  355. work, when he suddenly figured out what the problem was.  He had looked at
  356. the bad MMU chip under a microscope that day.  Later that night, under the
  357. influence of a few Michelobs, his brain "developed" the picture his eyes had
  358. taken earlier and he realized that an earlier layer had gotten into the
  359. design.
  360.  
  361.  
  362. 30-Jan-93  19:49:06
  363.  
  364. This would not be the first time a problem would be addressed at this
  365. particular bar.  (The Courtyard.... If you ever saw the David Letterman where
  366. the guy stops the fan with his tongue, he was a bartender there). The PLA had
  367. a problem where my group had made a typo in specifying the hundred some terms
  368. that comprised the different operating parameters. Well the designer in
  369. charge of the PLA took this rev as an opportunity to sneak a change into the
  370. chip without really going public with the fact he was making a change.  When
  371. the change went through it caused one of the layers to shift towards one side
  372. and effectively shorted the input pins together. Ya should've seen the seen
  373. where the designer's boss was loudly proclaiming that Hardware must of
  374. screwed up because his engineer DIDN't make any changes (that would've been
  375. like admitting that something had been "broken"). You could tell by the way
  376. the designer's face was slowly turning red that he hadn't yet found a way of
  377. telling his boss that he had made a change. Talk about giving someone enough
  378. rope to hang themselves, we just kept paying it out yard by yard.
  379.  
  380.  
  381. 30-Jan-93  19:53:45
  382.  
  383. Anyways back to the 8563.  The first problem was relatively easy to fix,
  384. providing you didn't give a hang about your own self respect.  The 8563
  385. designer mentioned that the block copy seemed to work better when you wrote
  386. the same command twice in a row.  I made him explain this to me in public,
  387. mostly due to the mean streak I was starting to develop when it came to this
  388. particular subject.  He calmly explained that you mearly wrote to this
  389. register and then wrote to it again.  I asked "you mean do it and do it now?"
  390. "Exactly", the designer exclaimed figuring he was on the home stretch  to
  391. understanding (Intel, at last his eyes unfurled), "kinda like a 'come on
  392. pretty please register' I asked with my best innocent expression, "Well sort
  393. of" he replied doubt creeping in to his voice, "you wouldn't be from Texas
  394. would you", I asked my face the definition of sincerity, (said in the voice
  395. of the wanna-be HBO director on the HBO made for TV commercial) "why yes....
  396. yes I am" he replied. Mind you a crowd had formed by this time, that poor guy
  397. never understood what was so funny about being from Texas or what a 'Damm
  398. Texan' register was.
  399.  
  400.  
  401. 30-Jan-93  19:53:50
  402.  
  403. This 'fix' actually did work some what, the only problem was that noone told
  404. the guy (Von Ertwine) who was developing CP/M at home (consultant). Von had
  405. wisely chosen not to try to follow all of the current Revs of the 8563,
  406. instead he latched onto a somewhat working Rev4 and kept if for software
  407. development.  Later we would find out that Von, to make the 8563 work
  408. properly, was taking the little metal cup that came with his hot air popcorn
  409. popper (it was a buttercup to be exact) and would put an Ice cube in it and
  410. set it on the 8563.  He got about 1/2 hour of operation per cube. On our side
  411. there was talk of rigging cans of cold spray with foot switches for the CES
  412. show, "sparkle??? I don't <pissshhh> see any sparkle <pissshhh>". Anyways,
  413. no-one told Von.... but don't worry, he would find out the day before CES
  414. during setup in 'Vegas.
  415.  
  416.  
  417. TO BE CONTINUED!